﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;

using DTO;
using BLL;

namespace CRM.GUI.HeThong
{
    public partial class frmChangePass : DevExpress.XtraEditors.XtraForm
    {
        public frmChangePass()
        {
            InitializeComponent();
        }

        private void btnReset_Click(object sender, EventArgs e)
        {
            txtCurrentPass.Text = "";
            txtNewPass.Text = "";
            txtReNewPass.Text = "";
        }

        private void btnOK_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(txtCurrentPass.Text))
            {
                MessageBox.Show("Mật khẩu hiện tại không được để trống", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtCurrentPass.Focus();
                return;
            }
            else
            { 
                UserInfoEntity us = new UserInfoEntity();
                if (CryptorEngine.Encrypt(txtCurrentPass.Text, true) != us.Password)
                {
                    MessageBox.Show("Mật khẩu hiện tại không chính xác\n" + "Xin hãy nhập lại", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtCurrentPass.Focus();
                    return;
                }
            }

            if (!string.IsNullOrWhiteSpace(txtNewPass.Text))
            {
                if (txtNewPass.Text.Length < 6)
                {
                    MessageBox.Show("Mật khẩu mới không được nhỏ hơn 6 ký tự", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtNewPass.Focus();
                    return;
                }
            }
            else
            {
                MessageBox.Show("Mật khẩu mới không được để trống", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtNewPass.Focus();
                return;
            }

            if (!string.IsNullOrWhiteSpace(txtReNewPass.Text))
            {
                if (txtReNewPass.Text.Length <= 6)
                {
                    MessageBox.Show("Mật khẩu mới không được nhỏ hơn 6 ký tự", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtReNewPass.Focus();
                    return;
                }
            }
            else
            {
                MessageBox.Show("Xác nhận mật khẩu không được để trống", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtReNewPass.Focus();
                return;
            }

            if (txtNewPass.Text != txtReNewPass.Text)
            {
                MessageBox.Show("Mật khẩu mới và xác nhận mật khẩu không giống/n" + "Xin hãy nhập lại", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtNewPass.Focus();
                return;
            }
            else
            {
                Authentication au = new Authentication();
                UserEntity us = new UserEntity();
                UserInfoEntity usinfo = new UserInfoEntity();
                us.UserID = usinfo.UserID;
                us.Password = txtNewPass.Text;
                au.ChangePass(us);
                MessageBox.Show("Đổi mật khẩu thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

        }
    }
}